The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
Traditionally, client computing devices with internet access can connect to enterprise server computers, which provide identity and access management (IAM) services for managing, validating, and controlling user access. Almost without exception, networks that permit access from desktop computers or mobile computing devices of end users have placed all principal security apparatus at the server computer. For example, a user who wants access to an online account can use a computer with internet connectivity to access a website with a login page and input identity information, such as a username and password. Once a server computer validates the identity information, policies control the amount of access any particular device has so that the user can access their own online account without accessing any other data.
This traditional approach requires a client device to have uninterrupted access to the internet for validation to occur. Furthermore, a security breach of the enterprise server could compromise the identity information of all the users.
The development and deployment of internet of things (IoT) devices has proceeded with remarkable speed in the past several years. IoT devices are diverse, including everything from controllers of industrial equipment to smart watches and personal activity monitors. However, security infrastructure has not kept pace with the huge number and wide use of these devices. Some analysts estimate that billions of such devices will be operating and connected to internetworks within a few years, but there is presently no effective security architecture that can efficiently permit IoT devices to be secured yet readily usable. Key constraints in this technical field have included limited processing power, limited memory, and limited or absent user interface elements. All these characteristics of IoT devices make them difficult to integrate into existing client-server security systems. At the same time, misuse of IoT devices could be catastrophic by permitting an attacker or unauthorized user to gain control of industrial equipment or other systems that have embedded IoT devices.
Thus, there is a need for applications, devices, and users to authenticate and collaborate locally without relying on uninterrupted internet access. There is also a need for a secure method of storing and accessing identity information that is tolerant of security breaches.